Packet transmission method and apparatus of mobile terminal

ABSTRACT

A method and an apparatus for transmitting a packet used in establishing or maintaining a connection with a server are provided. The method includes determining, when a current time is a packet transmission of at least one network service application of the mobile terminal, whether at least one other network service application having an adjustable packet transmission schedule with a packet transmission after the current time exists, adjusting, when the at least one other network service application exists, the adjustable packet transmission schedule to synchronize the packet transmission occasions of the at least one network service application with the at least one other network service application, and simultaneously transmitting a packet of the network service application having the packet transmission occasion at the current time and a packet of the at least one other network service application of which packet transmission schedule is adjusted.

PRIORITY

This application claims the benefit under 35 U.S.C. §119(a) of a Koreanpatent application filed on Jan. 26, 2012 in the Korean IntellectualProperty Office and assigned Serial No. 10-2012-0007560, the entiredisclosure of which is hereby incorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a packet transmission method andapparatus. More particularly, the present invention relates to a methodand apparatus for transmitting a packet for use in establishing ormaintaining a connection with a server.

2. Description of the Related Art

With the increasing consumer demand and diversity of mobile deviceapplications, use of mobile devices, which may also be referred to asmobile terminals, is growing at a rapid pace. Particularly, smartphones,and other similar mobile terminals, are designed to download theapplications from an online market to be installed and executed on thesmartphones. Recently, many mobile terminals may execute embedded pushapplications, for example an instant messenger application or a pushemail client, or may have the capability to install such applicationsdownloaded from the online market.

Such a push application may periodically transmit a keep-alive packet toa server in order to maintain a connection to a corresponding networkservice even when the service is not used. A transmission interval ofthe keep-alive may be referred to as heartbeat interval. With periodicreceipt of the keep-alive packet, the server maintains the connectionwith a mobile terminal.

The push applications installed in the mobile terminal may transmit thekeep-alive packet to the server at a predetermined heartbeat interval.In a case where the mobile terminal operates in an idle mode for savingbattery power, the mobile terminal may wake up, or in other words, exitthe idle mode, in order to transmit the keep-alive packet to the server,thereby consuming high electric current and battery powerinstantaneously. Accordingly, frequent keep-alive packet transmissionmay cause a waste of battery power, resulting in reduction of operationtime of the mobile phone.

Accordingly, there is a need for reducing a number of wakeup times ofthe mobile terminal operating in idle mode in order to increase a usagetime of the mobile terminal battery. The number of wakeup times may bereduced by synchronizing respective heartbeat intervals of differentpush applications installed on a same mobile terminal This method mayreduce the power consumption due to the frequent keep-alive packettransmission by synchronizing the heartbeat intervals of all pushapplications operating in the mobile terminal with that of a specificpush application (e.g. the shortest heartbeat interval) selected amongthem. However, this method may cause a side effect. Although a selectedpush application having the shortest heartbeat interval is not forced totransmit extra and/or unnecessary keep-alive packets, the other pushapplications may be synchronized forcibly to the heartbeat interval ofthe selected push application such that certain applications have totransmit unnecessary keep-alive packet. This means that the keep-alivepacket transmission amount increases while the number of wakeup timesdecreases, which may cause a burden from the view point of the server.That is, the keep-alive time synchronization method may result in atraffic overload to the server, resulting in degradation of servicequality. Furthermore, the increased traffic may cause a billing problemin view of the mobile terminal.

Therefore, there is a need for a method and apparatus for transmitting apacket for use in establishing or maintaining a connection with a serverthat reduces battery power consumption on a mobile terminal and thatdoes not cause a traffic overload in a server.

SUMMARY OF THE INVENTION

Aspects of the present invention are to address at least theabove-mentioned problems and/or disadvantages and to provide at leastthe advantages described below. Accordingly, as aspect of the presentinvention is to provide a packet transmission method and apparatus of amobile terminal that is capable of minimizing the side effect caused bythe heartbeat interval synchronization while reducing battery powerconsumption.

Another aspect of the present invention is to provide a packettransmission method and apparatus of a mobile terminal that is capableof minimizing the traffic load caused by the heartbeat intervalsynchronization while prolonging the usage time of the mobile terminal

In accordance with an aspect of the present invention, a packettransmission method of a mobile terminal is provided. The methodincludes determining, when a current time is a packet transmissionoccasion of at least one network service application of the mobileterminal, whether at least one other network service application havingan adjustable packet transmission schedule with a packet transmissionoccasion after the current time exists, adjusting, when the at least oneother network service application having the adjustable packettransmission schedule with the packet transmission occasion after thecurrent time exists, the adjustable packet transmission schedule of theat least one other network service application to synchronize the packettransmission occasions of the at least one network service applicationwith the at least one other network service application, andsimultaneously transmitting a packet of the network service applicationhaving the packet transmission occasion at the current time and a packetof the at least one other network service application of which packettransmission schedule is adjusted.

In accordance with another aspect of the present invention, a packettransmission apparatus of a mobile terminal is provided. The apparatusincludes a control unit which selects, when a current time is a packettransmission occasion of at least one network service application, atleast one other network service application and adjusts a packettransmission schedule of the selected at least one other network serviceapplication, and a radio communication unit which simultaneouslytransmits a packet of the network service application and a packet ofthe selected at least one other network service application.

Other aspects, advantages, and salient features of the invention willbecome apparent to those skilled in the art from the following detaileddescription, which, taken in conjunction with the annexed drawings,discloses exemplary embodiments of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects, features, and advantages of certainexemplary embodiments of the present invention will be more apparentfrom the following description taken in conjunction with theaccompanying drawings, in which:

FIG. 1 is a diagram illustrating a configuration of a mobile terminalaccording to an exemplary embodiment of the present invention;

FIG. 2 is a block diagram illustrating a configuration of the controlunit of FIG. 1 according to an exemplary embodiment of the presentinvention;

FIG. 3 is a flowchart illustrating a packet transmission methodaccording to an exemplary embodiment of the present invention; and

FIGS. 4 to 11 are graphs illustrating scheduling tables for use in thepacket transmission method and apparatus according to an exemplaryembodiment of the present invention.

Throughout the drawings, it should be noted that like reference numbersare used to depict the same or similar elements, features, andstructures.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

The following description with reference to the accompanying drawings isprovided to assist in a comprehensive understanding of exemplaryembodiments of the invention as defined by the claims and theirequivalents. It includes various specific details to assist in thatunderstanding but these are to be regarded as merely exemplary.Accordingly, those of ordinary skill in the art will recognize thatvarious changes and modifications of the embodiments described hereincan be made without departing from the scope and spirit of theinvention. In addition, descriptions of well-known functions andconstructions may be omitted for clarity and conciseness.

The terms and words used in the following description and claims are notlimited to the bibliographical meanings, but, are merely used by theinventor to enable a clear and consistent understanding of theinvention. Accordingly, it should be understood that the followingdescription of exemplary embodiments of the present invention areprovided for illustration purpose only and there may be variousequivalents and modified examples that can replace the embodimentsdescribed in the present specification and the configuration shown inthe drawings at the time of filling the present application. In thedrawings, certain elements may be exaggerated or omitted orschematically depicted for clarity of the exemplary embodiments of theinvention, and the actual sizes of the elements are not reflected. Thus,the present invention is not limited in the relative sizes of theelements and distances therebetween.

It is to be understood that the singular forms “a,” “an,” and “the”include plural referents unless the context clearly dictates otherwise.Thus, for example, reference to “a component surface” includes referenceto one or more of such surfaces.

In the present exemplary embodiments, the term ‘network service’ denotesa service for the mobile terminal for exchanging various types ofmessages through a network. Here, the message may be capable ofincluding data, text, images, video, audio, other multimedia contentsand any other suitable data or information that may be transmitted andreceived in a network.

In the present exemplary embodiments, the term ‘network serviceapplication’ denotes the application that enables the network service.Such network service applications may include Social Network Service(SNS) applications, for example Facebook and Twitter, email serviceapplications, for example, a push email client, Post Office Protocolversion 3 (POP3), Internet Mail Access Protocol version 4 (IMAP4),Exchange ActiveSync (EAS), or any other similar and/or suitable emailservice app, Instant Messenger applications, text and video chattingservice applications for peer-to-peer or group chatting orvideo-conferencing, message service applications, for example SMS andMMS, and widget service applications providing information on weather,stock, and news, and any other similar and/or suitable applications.

In the present exemplary embodiments, the network service applicationmay be categorized as one of a push application and a pollingapplication. The push application establishes a connection with a serverand transmits a signal to the server periodically in order to maintainthe connection. For example, the push application transmits a keep-alivepacket at a predetermined heartbeat interval to a push server. When adata transmission, for example a message addressed to the mobileterminal, is to be transmitted, the push server transmits the message tothe mobile terminal. Meanwhile, if there is no data transmission on anetwork resource allocated to the mobile terminal for a predeterminedtime duration, the communication operator of the push server releasesthe connection with the mobile terminal Accordingly, the push server maynot transmit the message addressed to the connection-released mobileterminal. Such a policy may be used by a communication operator in orderto use communication resources efficiently. Under such a policy, abattery power consumption of the mobile terminal may be conserved byincreasing a heartbeat interval. With respect to a communicationoperator or network service provider, however, a prolonged heartbeatinterval increases the number of connections to the mobile terminals,resulting in traffic overload. Meanwhile, the polling applicationaccesses the server periodically in order to poll the message. Thepolling application operates such that the mobile terminal periodicallyaccesses the server in order to request a message and to receive themessage transmitted by the server in response to the request. Theaforementioned POPS, IMAP4, and widget applications are examples ofpolling applications.

In the present exemplary embodiments, the term ‘idle state’ denotes astate wherein an operating mobile terminal consumes a least amount ofelectric current. If a packet transmission is to occur, the mobileterminal operating in the idle state wakes up. That is, the control unitof the mobile terminal switches from the idle mode to a packettransmission mode. In the present exemplary embodiments, the term‘packet transmission mode’ denotes a state in which the mobile terminaltransmits the packet. In the packet transmission mode, the control unitof the mobile terminal may control a radio communication unit totransmit a single packet or multiple packets simultaneously. At thistime, the difference between the electric currents consumed for thesingle packet transmission and the simultaneous multiple packetstransmission is small enough to be negligible. Accordingly, it ispreferred to simultaneously transmit as many of the packets as many aspossible.

The packet transmission method and apparatus described with reference tothe exemplary embodiments may be applicable to all the types of mobileterminals and other mobile electronic devices that perform radio and/orwireless communications. The mobile terminals may be any of asmartphone, a tablet Personal Computer (PC), a hand-held and/or portablePC, a Portable Multimedia Player (PMP), a Personal Digital Assistant(PDA), and any other similar or suitable portable electronic device.

The packet transmission method and apparatus of the exemplaryembodiments may be capable of prolonging a usage time of the mobilephone battery such that the mobile terminal respectively adjusts thepacket transmission schedules of the network service applications andtransmits the packets according to the respectively scheduled packettransmission scheduling. The packet schedule adjustment and transmissionmethods according to the exemplary embodiments are describedhereinafter. Detailed description of well-known functions and structuresincorporated herein may be omitted to avoid obscuring the subject matterof the present invention.

In the following descriptions, the term ‘app’ is used interchangeablewith the term ‘network service application.’

FIG. 1 is a diagram illustrating a configuration of a mobile terminalaccording to an exemplary embodiment of the present invention.

Referring to FIG. 1, a mobile terminal 100 may include a touchscreen110, a key input unit 120, a display unit 130, a storage unit 140, aradio communication unit 150, an audio processing unit 160, a microphoneMIC, a speaker SPK, and a control unit 170.

The touchscreen 110 may cover a part of or an entire front surface ofthe display unit 130 in order to receive a touch gesture from a user andin order to generate a corresponding touch event that may be provided tothe control unit 170. The control unit 170 may detect the touch gestureaccording to the touch event received from the touchscreen 100 and maycontrol the aforementioned components of the mobile terminal 100 inresponse to the detected touch gesture. Herein, the touch gesture may beany of touch, tap, long tap, drag, sweep, or any other similar orsuitable user generated touch gesture. The touch is a touch gesture inwhich the user makes a contact at a position on the screen. The tap is atouch gesture in which the user makes a contact and releases the contactat a position on the screen without movement of the contact position.The long tap is a touch gesture in which the user makes a contact for arelatively long time and releases the contact as compared to the tap.The drag is a touch gesture in which the user makes a contact at aposition and moves the contact to another position on the screen. Thesweep, or flick, is a touch gesture in which the user makes a skimmingmotion with a finger and/or touch input device as if flipping a page ofa book. The touchscreen 110 may be a resistive type touch panel, acapacitive type touch panel, an electromagnetic induction type touchpanel, or any other suitable and/or similar type of touch panel.

The key input unit 120 may include a plurality of input keys forreceiving alphanumeric inputs and function keys for configuring variousfunctions, or any other similar and/or suitable keys. The function keysmay be implemented in the form of navigation keys, side keys, andshortcut keys configured to perform predetermined functions. The keyinput unit 120 may generate key events related to the user configurationand the function control of the mobile terminal and provide the keyevents to the control unit 170. The key events may be any of a poweron/off event, a volume adjustment event, a screen on/off event, or anyother similar and/or suitable type of event. The control unit 170 maycontrol the aforementioned components of the mobile terminal 100 inresponse to the key event.

The display unit 130 may display the digital data input through thecontrol unit 170 in an analog format under the control of the controlunit 170. That is, the display unit 130 may display various mobileterminal operation screens, e.g. a lock screen, a home screen, variousapplication execution screens, or any other similar and/or suitablescreen. The lock screen may be an image displayed when the screen of thedisplay unit 130 is turned on but operation of the mobile terminal 100is locked. If a touch gesture for unlocking the screen is detected, thecontrol unit 170 may switch the lock screen to the home screen, anapplication execution screen, or any other suitable screen. The homescreen may be a plurality of application icons corresponding to therespective applications or may be any other screen displayed allowing auser to execute operations and/or applications. If one of the icons isselected by the user, the control unit 170 executes the applicationrepresented by the icon. At this time, the display unit 130 displays theexecution screen of the application. The display unit 130 may displayone of the aforementioned screens as the main screen and another as asub-screen overlapped on the main screen under the control of thecontrol unit 170. The display unit 130 may be any of a flat displaypanel of a Liquid Crystal Display (LCD), an Organic Light Emitting Diode(OLED) display, an Active Matrix Organic Light Emitted Diode (AM-OLED)display, or any other similar and/or suitable display type.

The storage unit 140 may store an Operating System (OS) of the mobileterminal, applications that are executable on the mobile terminal 100,data including text, audio, and video files, any user generated data,and/or any other similar and/or suitable data. The storage unit 140 mayinclude a program region and a data region.

The program region of the storage unit 140 may store the OS for bootingup the mobile terminal and for managing the operations of the internalcomponents and various applications. Particularly in an exemplaryembodiment of the present invention, the program region may store a pushapp 141, a polling app 142, a scheduling program 143, and a packettransmission program 144. Each of the applications stored in the programregion may be an embedded application, a downloaded application or athird party application.

The scheduling program 143 may manage the packet transmission schedulesof the applications installed in the mobile terminal 100 and may detectthe network activation events generated by the applications. If anetwork activation event is detected, the scheduling program 143 maycontrol the packet transmission program 144 to transmit the packet ofthe application indicated by the detected network activation event. Atthis time, the scheduling program 143 may search for the applicationsavailable for simultaneous packet transmission from among the otherapplications by referencing the scheduling table and may adjust thepacket transmission schedules of the found applications.

The scheduling program 143 may determine the application available forschedule adjustment according to a predetermined determinationcondition. The determination condition may be whether the packettransmission occasion is variable. The push application 141 may be theapplication with the variable packet transmission occasion. That is, thepacket transmission occasion of the push application 141 may be adjustedwithin a predetermined range of heartbeat interval. In contrast, thepacket transmission occasion of the polling application 142 may be setto a fixed value determined at a predetermined heartbeat interval. Inthe present exemplary embodiment, it is assumed that the packettransmission occasion of the push application 141 is variable within thepredetermined range of the heartbeat interval for convenience purpose,and it is assumed that the packet transmission occasion of the pollingapplication 141 is fixed.

Under these assumptions of the present exemplary embodiment, thescheduling program 143 considers other push applications, besides thepush application 141, as the targets of schedule adjustment. The pollingapplications may be not considered as the target applications forschedule adjustment. However, the present invention is not limitedthereto, and the network activation event may be generated regardless ofthe type of application. In further detail, when the scheduling program143 transmits the packet of the application indicated by the detectedevent, if the indicated application is a push application, then theschedule of the indicated push application is moved up to the currenttime. As a consequence, the scheduling program 143 controls to transmitthe packets simultaneously at the current time. On the other hand, ifthe indicated application is a polling application, the schedulingprogram 143 controls to transmit the packet of the indicated pollingapplication without schedule adjustment.

The determination condition may include a time difference in addition towhether the packet transmission occasion is adjustable. In detail, thescheduling program calculates a difference between the current time andthe next packet transmission occasion of the application. If thedifference is less than a predetermined value, e.g. 1 minute, i.e. ifthe next packet transmission occasion of the application is within 1minute from the current time, the scheduling program 143 may move up theschedule of the corresponding application to the current time in orderto transmit the packets simultaneously at the current time. Otherwise,if the difference is equal to or greater than the predetermined value,the scheduling program may only transmit the packet of the applicationcorresponding to the detected event at the current time withoutadjusting the schedule of other applications.

The scheduling application 143 may take the two aforementioneddetermination conditions into account when performing the scheduleadjustment function. For example, if the application having the nextpacket transmission occasion is the push application 141 and if thecalculated difference is less than the predetermined value, thescheduling program 143 may move up the transmission schedule of thecorresponding application to the current time so as to be simultaneouslytransmitted with the packet of the push application 141 corresponding tothe detected event. Otherwise, the scheduling program 143 controls suchthat only the packet of the push application 141, or any otherapplication, corresponding to the detected event is transmitted withoutschedule adjustment.

The packet transmission program 144 may control the radio communicationunit 150 in order to transmit the packet. In further detail, the packettransmission program 144 may be responsible for the push notificationfunction for controlling the radio communication unit 130 to transmitthe keep-alive packet to the push server and may be responsible for thepolling function for controlling the radio communication unit 130 torequest the polling server for a message and to receive the messagetransmitted by the polling server in response to the request. Meanwhile,the push application 141 may include the push notification function. Thepolling application 142 may include the polling function.

The data region of the storage unit 140 may store data generated in thecourse of using the mobile terminal or may store downloaded data. Thedata region may also store the aforementioned screens presented on thedisplay unit 130 and may store copied data to be pasted. Particularlyaccording to an exemplary embodiment, the data region may store ascheduling table 145 and configuration information 146. The schedulingtable 145 may be a time data listing packet transmission schedules ofthe applications stored in the mobile terminal 100 in temporal order.The scheduling table 145 may be configured by the scheduling program143. The configuration information 146 may include various configurationvalues related to the operation of the mobile terminal Particularly, theconfiguration information 146 may include configuration valuesindicating whether the corresponding applications support a change topacket transmission schedules. The configuration information 146 mayalso include a reference value to be compared with the calculateddifference value.

The radio communication unit 150 may receive voice communication, videocommunication, data communication, and digital broadcast signals underthe control of the control unit 170. Particularly in an exemplaryembodiment, the radio communication unit 150 may transmit the keep-alivepacket to the push server. The radio communication unit 150 may alsoconnect to the polling server to request a message and to receive themessage transmitted by the polling server in response to the request.Accordingly, the radio communication unit 150 may include a cellularcommunication module, a short range wireless communication module (e.g.Wi-Fi module, Bluetooth module or NFC(Near Field Communication) module),a digital broadcast module, or any other suitable and/or similarcommunication module.

The audio processing unit 160 may convert a digital audio signal inputby the control unit 170 into an analog audio signal to be output throughthe speaker SPK and may convert an analog signal including voice inputthrough the microphone MIC into a digital audio signal to be input tothe control unit 170 under the control of the control unit 170.

The control unit 170 may control overall operations and signal flows ofthe internal components of the mobile terminal 100 and may process dataof the mobile terminal 100. The control unit 170 may also control thepower supply from the battery to the internal components of the mobileterminal 100. The control unit 170 may also execute the OS andapplications stored in the program region of the storage unit 140.Particularly, in an exemplary embodiment, the control unit 170 mayexecute the push app 141, the polling app 142, the scheduling program143, and the packet transmission program 144. That is, the control unit170 may control schedule adjustments and packet transmissions.

FIG. 2 is a block diagram illustrating a configuration of the controlunit of FIG. 1 according to an exemplary embodiment of the presentinvention.

Referring to FIG. 2, the control unit 170 may include a scheduler 171, apacket transmission controller 172, a first push app 173, a poling app174, and a second push app 175. The first push app 173 and the pollingapp 174 may be embedded applications. The second push app 175 may be athird party application. The first push app 173, the polling app 174,and the second push app 175 respectively issue a network activity eventto the scheduler 171 at their packet transmission occasions. If thenetwork activation event is detected, the scheduler 171 controls thepacket transmission controller 172 to transmit the packet of theapplication corresponding to the detected event. At this time, thescheduler 171 references the scheduling table 145 in order to determinewhether there is any application available for simultaneous packettransmission among the other applications and, if so, adjusts the packettransmission timing of corresponding ones of the other applications. Thescheduler 171 may also determine which applications support scheduleadjustment according to a predetermined condition.

Since the scheduler 143 corresponds to the above-described schedulingprogram 143, detailed description thereof is omitted herein. The packettransmission controller 172 performs the push notification function forcontrolling the radio communication unit 150 in order to transmit thekeep-alive packet to the push server. The packet transmission controller172 also performs the polling function for controlling the radiocommunication unit 150 in order to request the polling server for amessage and to receive the message transmitted by the polling server inresponse to the request. Meanwhile, the push notification function maybe included in the push application 173. Also, the polling function maybe included in the polling application 174.

Although not enumerated herein, the mobile terminal 100 may also furtherinclude other components, for example a GPS module and a camera module.According to an exemplary embodiment of the present invention, some ofthe internal components of the mobile terminal 100 may be omitted,combined, or replaced by other components according to a design choice.According to an exemplary embodiment of the present invention,additional input units may be implemented with at least one of a touchpad, a trackball, a keypad, or any other similar and/or suitable inputdevice, in addition to the above-described touchscreen 110 and key inputunit 120.

FIG. 3 is a flowchart illustrating a packet transmission methodaccording to an exemplary embodiment of the present invention.

Referring to FIG. 3, if the user selects the power on/off key of the keyinput unit 120 in order to power on the mobile terminal 100, power issupplied from the battery to the control unit 170 such that the controlunit 170 loads the OS from the storage unit 140 in order to boot up themobile terminal 100 at step 301. Once the mobile terminal has booted upcompletely in step 301, the control unit 170 of the mobile terminal 100receives packet transmission schedules from the network serviceapplications and configures the scheduling table 145 for managing thepacket transmission of a plurality of apps according to the receivedpacket transmission schedules at step 302. As described above, thescheduling table 145 is the time table listing the packet transmissionschedules in temporal order in order to manage the packet transmissionsof the network service applications. After configuring the schedulingtable, the control unit 170 may control the mobile terminal 100 to enterthe idle mode.

In the idle mode, at step 303, the control unit 170 determines whetherthe current time is a packet transmission occasion of a certainapplication by referencing the scheduling table. If the current time isthe packet transmission occasion, the control unit 170 switches from theidle mode to the packet transmission mode and proceeds to step 304. Inthe packet transmission mode, at step 304, the control unit 170determines whether there is any application has an adjustable scheduleand is available for schedule adjustment. At this time, the control unit170 may determine whether the application available for the scheduleadjustment fulfills the above-described determination conditions. Ifthere is any application available for the schedule adjustment, thecontrol unit 170 adjusts the schedule of the corresponding availableapplication in the scheduling table 145 at step 305. That is, thecontrol unit 170 moves up the schedule of the application available forthe schedule adjustment to the current time. At this time, the controlunit 170 does not change the packet transmission period of theapplication available for the schedule adjustment. After adjusting theschedule in step 305, the control unit 170 controls the radiocommunication unit 150 to simultaneously transmit the packet originallyscheduled at the current occasion and the packet of which transmissionscheduled is moved up to the current time at step 306. Otherwise, atstep 304, if there is no application available for the scheduleadjustment, then the control unit 170 controls the radio communicationunit 150 to transmit only the packet scheduled at the current time atstep 307. After transmitting the packet and/or packets, the control unit170 determines whether a power-off event is detected at step 308. If nopower-off event is detected, the control unit 170 switches from thepacket transmission mode to the idle mode and returns the procedure tostep 303.

FIGS. 4 to 11 are graphs illustrating scheduling tables for use in thepacket transmission method and apparatus according to an exemplaryembodiment of the present invention.

Referring to FIG. 4, application P1 denotes a first push application andapplication P2 denotes a second push application, both available forpacket transmission timing adjustment. Applications P3 and P4 denotepolling applications having fixed packet transmission occasions. Here,it is assumed that P3 is a polling app which connects to the pollingserver at a predetermined interval and P4 is a polling app whichconnects to the polling server once. The control unit 170 receives thepacket transmission schedules for the applications P1, P2, P3, and P4and generates the scheduling table 145 based on the packet transmissionschedules as shown in FIG. 4.

Referring to FIG. 5, a case where the current time is minute 1, which isthe transmission occasion of a packet 510 of the application P2 isshown. The control unit 170 determines that a packet 520 of theapplication P1 is scheduled to be transmitted after 1 minute anddetermines that the application P1 is a push app. Accordingly, thecontrol unit 170 respectively moves up the transmission occasions ofpackets 520, 530, 540, 550, and 560 of the application P1 by 1 minute.After adjusting the schedule of the application P1, the control unit 170controls the radio communication unit 150 to transmit the packet 520 ofthe application P1 and the packet 510 of the application P2simultaneously.

Referring to FIG. 6, a case where the current time is minute 7, which isthe transmission occasion of a packet 610 of the application P1 isshown. The transmission occasion of the packet 610 has been moved upfrom the minute 8 to the minute 7 through the schedule adjustment. Atthe current time of minute 7, the control unit 170 determines that apacket 620 of application P3 is scheduled to be transmitted after 2minutes. The control unit 170 also determines that application P3 is apolling app. Accordingly, the control unit 170 maintains the schedule ofapplication P3 without adjustment. The control unit 170 controls theradio communication unit 170 to transmit only the packet 610 of theapplication P1 at the current time. If there is no schedule of theapplication P3 in the schedule table, the control unit 170 is capable ofrespectively moving up the transmission occasions of packets 630 and 640of the application P2 by 3 minutes. If the application P3 is a push appother than the polling app, the control unit 170 is capable of adjustingthe schedules of the application P2 and the application P3. However, thenumber of packets available to be transmitted simultaneously may belimited. For example, in a case where the number of simultaneoustransmittable packets is limited to 2, the control unit 170 is capableof adjusting only the schedule of the application P3.

Referring to FIG. 7, a case where the current time is minute 9, which isthe transmission occasion of a packet 710 of the application P3, isshown. At this time, the control unit 170 determines that a packet 720of the application P2 is scheduled to be transmitted after 1 minute. Thecontrol unit 170 also determines that the application P2 is a push app.Accordingly, the control unit 170 respectively moves up the transmissionoccasions of packets 720, 730, and 740 by 1 minute. After adjusting theschedule of the application P2, the control unit 170 controls the radiocommunication unit 150 to simultaneously transmit the packets of theapplications P2 and P3.

Referring to FIG. 8, a case where the current time is minute 13, whichis the transmission occasion of a first packet 810 of the applicationP1, is shown. At this time, the control unit determines that a packet820 of the application P2 is scheduled to be transmitted after 5minutes. The control unit 170 also determines that a second packet 830of the application P1 is scheduled to be transmitted after 6 minutes.That is, the control unit 170 checks that the packet 820 of theapplication P2 is close to the second packet 830 of the application P1as compared to the first packet 810 of the application P1 on the timeaxis. In this case, the control unit 170 does not adjust the schedule ofthe application P2. The control unit 170 controls the radiocommunication unit 150 to transmit the first packet 810 of theapplication P1.

Referring to FIG. 9, a case where the current time is minute 18, whichis the transmission occasion of a packet 910 of the application P2, isshown. At this time, the control unit 170 determines that a packet 920of the application P1 is scheduled to be transmitted after 1 minute. Thecontrol unit 170 also determines that the application P1 is a push app.The control unit 170 also determines that the packet 940 of theapplication P4 is scheduled to be transmitted 4 minutes after thecurrent time. Next, the control unit 170 determines that the applicationP4 is a polling app. In this case, the control unit 170 respectivelymoves up the transmission occasions of the packets 920 and 930 of theapplication P1 by 1 minute without adjusting the schedule of theapplication P4. Next, the control unit 170 controls the radiocommunication unit 150 to simultaneously transmit the packet 920 of theapplication P1 and the packet 910 of the application P2.

Referring to FIG. 10, a case where the current time is minute 22, whichis the transmission occasion of a packet 1010 of the application P4, isshown. At this time, the control unit 170 determines that a packet 1020of the application P1 is scheduled to be transmitted after 2 minutes.The control unit 170 also determines that the application P1 is a pushapp. Accordingly, the control unit 170 moves up the transmissionoccasion of the packet 1020 of the application P1 by 1 minute. Next, thecontrol unit 170 controls the radio communication unit 150 tosimultaneously transmit the packet 1020 of the application P1 and thepacket 1010 of the application P4.

Referring to FIG. 11, a case where the current time is minute 25, whichis the transmission occasion of the packet 1110 of the application P3,is shown. At this time, the control unit 170 determines that the packet1120 of the application P2 is scheduled to be transmitted 1 minute afterthe current time. The control unit 170 also determines that theapplication P2 is a push app. Accordingly, the control unit 170 moves upthe transmission occasion of the packet 1120 of the application P2 by 1minute. Next, the control unit 170 controls the radio communication unit150 to simultaneously transmit the packet 1120 of the application P2 andthe packet 1110 of the application P3 simultaneously.

As described above in FIGS. 5 to 11, the control unit 170 wakes up 7times to operate in the packet transmission mode for 26 minutes. If theoriginal schedules are applied, as depicted in FIG. 4, the control unit170 will wake up 11 times to operate in the packet transmission mode for26 minutes. This means that the packet transmission method of theexemplary embodiments may reduce the wakeup times for packettransmission so as to save power, resulting in increase of the mobileterminal usage time. Furthermore, the packet transmission method of theexemplary embodiments may reduce the number of wakeups to enter thepacket transmission mode without unnecessary packet transmission,resulting in minimization of traffic load.

As described above, the packet transmission method and apparatus of theexemplary embodiments may prolong the usage time of the mobile terminalby simultaneously transmitting as many packets generated by differentapplications as possible while minimizing potential traffic overload.

The packet transmission method of the exemplary embodiments may beimplemented in the form of computer-executable program commands andstored in a non-transient computer-readable storage medium. Thenon-transient computer readable storage medium may store the programcommands, data files, and data structures in individual or combinedforms. The program commands recorded in the non-transientcomputer-readable storage medium may be designed and implemented forvarious exemplary embodiments of the present invention or used by thoseskilled in the computer software field. The non-transientcomputer-readable storage medium includes magnetic media, for example afloppy disk and a magnetic tape, optical media including a Compact Disc(CD) Read Only Memory (ROM) and a Digital Video Disc (DVD) ROM, amagneto-optical media, for example as a floptical disk, and a hardwaredevice designed for storing and executing program commands, for exampleROM, Random Access Memory (RAM), and flash memory. The programs commandsinclude the language code executable by computers using an interpreteras well as machine language codes created by a compiler. Theaforementioned hardware device may be implemented with one or moreprocessors (e.g. controllers) for processing one or more softwaremodules to execute the operations of the various exemplary embodimentsof the present invention.

The packet transmission method and apparatus of exemplary embodiments ofthe present invention may be practiced with modification and alterationwithin the spirit and scope of the present invention.

While the invention has been shown and described with reference tocertain exemplary embodiments thereof, it will be understood by thoseskilled in the art that various changes in form and details may be madetherein without departing from the spirit and scope of the invention asdefined by the appended claims and their equivalents.

What is claimed is:
 1. A packet transmission method of a mobileterminal, the method comprising: determining, when a current time is apacket transmission occasion of at least one network service applicationof the mobile terminal, whether at least one other network serviceapplication having an adjustable packet transmission schedule with apacket transmission occasion after the current time exists; adjusting,when the at least one other network service application having theadjustable packet transmission schedule with the packet transmissionoccasion after the current time exists, the adjustable packettransmission schedule of the at least one other network serviceapplication to synchronize the packet transmission occasions of the atleast one network service application with the at least one othernetwork service application; and simultaneously transmitting a packet ofthe network service application having the packet transmission occasionat the current time and a packet of the at least one other networkservice application of which packet transmission schedule is adjusted.2. The method of claim 1, wherein the determining of whether the atleast one other network service application having the adjustable packettransmission schedule with the packet transmission occasion after thecurrent time exists comprises determining that the network serviceapplication having adjustable packet transmission occasion to be thenetwork service application having the adjustable packet transmissionschedule.
 3. The method of claim 2, wherein the network serviceapplication having the adjustable packet transmission occasions is apush application which periodically transmits a keep-alive packet formaintaining a connection to a server.
 4. The method of claim 3, whereinthe adjusting of the adjustable packet transmission schedule of the atleast one other network service application comprises moving up, whenthe network service application having the packet transmission occasionafter the current time is the push application, the packet transmissionoccasion after the current time to the current time.
 5. The method ofclaim 4, wherein the adjusting of the adjustable packet transmissionschedule of the at least one other network service application comprisesskipping, when the network service application having the packettransmission occasion after the current time is a polling application,adjustment of the packet transmission occasion after the current time.6. The method of claim 1, further comprising transmitting, when no othernetwork service application having the adjustable packet transmissionschedule exists, only a packet scheduled to be transmitted at thecurrent time.
 7. The method of claim 1, further comprising switching,after the simultaneously transmitting of the packet of the networkservice application having the packet transmission occasion at thecurrent time and the packet of the at least one other network serviceapplication of which packet transmission schedule is adjusted, to anidle mode for minimizing consumption of electric current by the mobileterminal.
 8. A packet transmission apparatus of a mobile terminal, theapparatus comprising: a control unit which selects, when a current timeis a packet transmission occasion of at least one network serviceapplication, at least one other network service application and adjustsa packet transmission schedule of the selected at least one othernetwork service application; and a radio communication unit whichsimultaneously transmits a packet of the network service application anda packet of the selected at least one other network service application.9. The apparatus of claim 8, where the control unit comprises: ascheduler which determines, when the current time is a packettransmission occasion of at least one network service application,whether any other network service application having an adjustablepacket transmission schedule with a succeeding packet transmissionoccasion exists and adjusts, when the any other network serviceapplication having the adjustable packet transmission schedule exists,the packet transmission schedule of the existing any other networkservice application to synchronize the packet transmission occasions ofthe at least one network service application with the existing any othernetwork service application; and a packet transmission controller whichcontrols simultaneous transmitting of the packets of the at least onenetwork service application and the existing any other network serviceapplication.
 10. The apparatus of claim 9, wherein the schedulerdetermines the existing any other network service application having theadjustable packet transmission occasion to be the any other networkservice application having the adjustable packet transmission schedule.11. The apparatus of claim 10, wherein the scheduler determines a pushapplication which periodically transmits a keep-alive packet formaintaining a connection to a server as the existing any other networkservice application having the adjustable packet transmission occasions.12. The apparatus of claim 11, wherein the scheduler moves up, when theexisting any other network service application has a packet transmissionoccasion after the current time, the packet transmission occasion of theexisting any other network service application to the current time. 13.The apparatus of claim 12, wherein the scheduler skips, when thescheduler determines a polling application to be the existing any othernetwork service application having a packet transmission occasion afterthe current time, adjustment of the packet transmission occasion afterthe current time.
 14. The apparatus of claim 9, wherein the schedulercontrols the packet transmission controller to transmit, when no othernetwork service application having an adjustable packet transmissionschedule exists, only the packet scheduled to be transmitted at thecurrent time.
 15. The apparatus of claim 8, wherein the control unitwakes up, at a time of the packet transmission occasion, from an idlemode for conserving electric current.